package com.sondon.mayi.activity;

import org.androidannotations.annotations.AfterViews;
import org.androidannotations.annotations.Bean;
import org.androidannotations.annotations.Click;
import org.androidannotations.annotations.EActivity;
import org.androidannotations.annotations.ItemClick;
import org.androidannotations.annotations.ItemLongClick;
import org.androidannotations.annotations.ViewById;
import org.apache.http.Header;

import android.view.View;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.ListView;

import com.loopj.android.http.RequestParams;
import com.loopj.android.http.TextHttpResponseHandler;
import com.sondon.mayi.adapter.NoticeListAdapter;
import com.sondon.mayi.configs.URLConfigs;
import com.sondon.mayi.entity.NoticeListEntity;
import com.sondon.mayi.fruit.R;
import com.sondon.mayi.ui.MyMultipleTopBar;
import com.sondon.mayi.ui.TopBarClickListener;
import com.sondon.mayi.util.AsyncHttpUtil;
import com.sondon.mayi.util.GsonUtil;
import com.sondon.mayi.util.LogUtil;
import com.sondon.mayi.util.ToastUtils;

/**
 * @Project : Fruit
 * @Package : com.sondon.mayi.activity
 * @Class : NoticeActivity
 * @Author : 蔡文锋
 * @DateTime：2015年6月12日 下午8:47:41
 * @Blog：http://blog.csdn.net/caiwenfeng_for_23
 * @Description : { 动态消息 }
 *
 */
@EActivity(R.layout.notices)
public class NoticeActivity extends BaseActivity {
	@ViewById
	MyMultipleTopBar topBar;
	@ViewById
	Button login_now;// 登录
	@ViewById
	ListView notice_list;// 动态消息列表
	@ViewById
	LinearLayout notice_not_login_layout;// 动态消息没有登录的布局
	@Bean
	NoticeListAdapter noticelistadapter;

	@Override
	public void onResume() {
		super.onResume();
	}

	@ItemLongClick(R.id.notice_list)
	public void itemOnLongClick(int position){
//		Notice notic=noticelistadapter.GetData().get(position);
//		ToastUtils.show(context, "删除 :"+position);
	}
	
	@ItemClick(R.id.notice_list)
	public void itemOnClick(int position){
//		Notice notic=noticelistadapter.GetData().get(position);
//		ToastUtils.show(context, "点击 :"+position);
	}
	
	
	// 初始化控件
	@AfterViews
	public void initView() {
		String news_code=myprefs.news_code().get();
		if("0".equals(news_code)){
			myprefs.news_code().put("");
		}
		
//		ToastUtils.show(context, R.string.processing);
		
		// topbar的监听事件
		topBar.setTopBarClickListener(new TopBarClickListener() {

			@Override
			public void rightBtnClick() {
			}

			@Override
			public void leftBtnClick() {
				onBackPressed();
			}
		});
		
		//判断是否登录了
		if (myprefs.is_login().get()) {
			//已经登录
			notice_not_login_layout.setVisibility(View.GONE);
			notice_list.setVisibility(View.VISIBLE);
			
			RequestParams params=new RequestParams();
//			params.put("page", 1);
//			params.put("num", 1);
			//请求数据
			AsyncHttpUtil.get(URLConfigs.NoticeList_ukey+myprefs.Ukey().get(), params, new TextHttpResponseHandler() {
				
				@Override
				public void onSuccess(int status, Header[] arg1, String json) {
					if(status==200){
						LogUtil.e(TAG, "NoticeList  json :"+json);
						NoticeListEntity entity=GsonUtil.GetFromJson(json, NoticeListEntity.class);
						if(entity.isStatus()){
							noticelistadapter.SetData(entity.getList());
						}else{
							ToastUtils.show(context, entity.getMsg());
						}
					}
				}
				
				@Override
				public void onFailure(int status, Header[] arg1, String json, Throwable arg3) {
					ToastUtils.show(context, R.string.network_unavailable);
				}
			});
			
		} else {
			//没有登录
			notice_not_login_layout.setVisibility(View.VISIBLE);
			notice_list.setVisibility(View.GONE);
		}
		
		//适配器
		notice_list.setAdapter(noticelistadapter);
	}

	// 点击事件
	@Click({ R.id.login_now })
	public void OnClick(View v) {
		switch (v.getId()) {
		case R.id.login_now:
			openActivity(LoginActivity_.class);
			break;
		default:
			break;
		}
	}

}
